package com.literaryfamily.literaryfamily.service.orders;

import com.literaryfamily.literaryfamily.entity.BookSaleOrders;
import com.literaryfamily.literaryfamily.entity.Payments;

import java.util.List;

public interface PlaceOrderService {
	/**
	 * 下单方法,允许用户一下下多个订单(生成多个订单),这里的订单应该改变书籍出售状态为已被其他用户下单,不可被其他用户购买
	 * 具体的支付方法调用支付接口里的
	 * 买卖单号生成规则 s_yyyy_MM_dd__hh_mm_ss_userId_bookId
	 *
	 * @param userId             下单用户
	 * @param bookSaleOrdersList 下的订单的订单集合(一个或者多个)
	 * @return 对应的买卖单,需要整合对应买卖单的金额(邮费和原价分开算)
	 */
	List<Payments> placeAnOrder(Long userId, List<BookSaleOrders> bookSaleOrdersList);

}